/*
 * 文  件   名: File.java
 * 版         本 : docrepository-core(Anttribe). All rights reserved.
 * 描         述 : <描述>
 * 修   改  人: zhaoyong
 * 修改时间: 2014年10月29日
 */
package org.anttribe.docrepository.file.domain;

import java.sql.Timestamp;

import org.anttribe.docrepository.user.domain.UserInfo;
import org.anttribe.saturn.common.utils.UUIDUtils;

/**
 * 文件(单个具体的文件或目录)
 * 
 * @author zhaoyong
 * @version 2014年10月29日
 */
public class FileInfo
{
    /**
     * 文件id
     */
    private String fileId = UUIDUtils.getRandomUUID();
    
    /**
     * 文件名
     */
    private String fileName;
    
    /**
     * 文件路径
     */
    private String filePath;
    
    /**
     * 文件描述
     */
    private String description;
    
    /**
     * 文件类型
     */
    private String fileType;
    
    /**
     * 文件大小 单位：字节
     */
    private long fileSize;
    
    /**
     * 是否是目录
     */
    private boolean isDirectory;
    
    /**
     * 父目录
     */
    private FileInfo parentDirectory;
    
    /**
     * 文件拥有者
     */
    private UserInfo owner;
    
    /**
     * 创建时间
     */
    private Timestamp createTime;
    
    /**
     * 更新时间
     */
    private Timestamp updateTime;
    
    public String getFileId()
    {
        return fileId;
    }
    
    public void setFileId(String fileId)
    {
        this.fileId = fileId;
    }
    
    public String getFileName()
    {
        return fileName;
    }
    
    public String getFilePath()
    {
        return filePath;
    }
    
    public void setFilePath(String filePath)
    {
        this.filePath = filePath;
    }
    
    public void setFileName(String fileName)
    {
        this.fileName = fileName;
    }
    
    public String getDescription()
    {
        return description;
    }
    
    public void setDescription(String description)
    {
        this.description = description;
    }
    
    public String getFileType()
    {
        return fileType;
    }
    
    public void setFileType(String fileType)
    {
        this.fileType = fileType;
    }
    
    public long getFileSize()
    {
        return fileSize;
    }
    
    public void setFileSize(long fileSize)
    {
        this.fileSize = fileSize;
    }
    
    public boolean isDirectory()
    {
        return isDirectory;
    }
    
    public void setDirectory(boolean isDirectory)
    {
        this.isDirectory = isDirectory;
    }
    
    public FileInfo getParentDirectory()
    {
        return parentDirectory;
    }
    
    public void setParentDirectory(FileInfo parentDirectory)
    {
        this.parentDirectory = parentDirectory;
    }
    
    public UserInfo getOwner()
    {
        return owner;
    }
    
    public void setOwner(UserInfo owner)
    {
        this.owner = owner;
    }
    
    public Timestamp getCreateTime()
    {
        return createTime;
    }
    
    public void setCreateTime(Timestamp createTime)
    {
        this.createTime = createTime;
    }
    
    public Timestamp getUpdateTime()
    {
        return updateTime;
    }
    
    public void setUpdateTime(Timestamp updateTime)
    {
        this.updateTime = updateTime;
    }
}